Despite much research on programming language principles, most often the design of modern languages ignores such principles which results in cumbersome, hard to understand, and error-prone code. We substantiate our claim through a short sampling of the features of some widely used languages and by referring to other criticisms widely publicized in the literature. We argue that a major reason of such an unpleasant state of the art is that programming languages evolve in a way that too much resembles that of natural languages. We advocate a different attitude in programming language design, going back to essentiality and rigorous application of few basic, well-chosen principles
In this article we review the development of programming languages and classify them based on their ...
Software needs now strain the design limits of traditional programming languages. Modern application...
End-users must write programs to control many different kinds of applications. Examples include mult...
Despite much research on programming language principles, most often the design of modern languages...
Given the current drive to teach computational concepts to all from an early age, we consider whethe...
End-users must write programs to control many different kinds of applications. Examples include mult...
There is no need to argue in favor of concise, clear, complete, consistent, descriptions of programm...
Programming may be more difficult than necessary because it requires solutions to be expressed in wa...
{lorenz, lieber} @ ccs.neu.edu Software understanding (for documentation, maintenance or evolution)...
The basic knowledge of programming is not possible without the knowledge of its history. When you ar...
Given the current focus on teaching computational concepts to all from an early age, combined with t...
Abstract—Natural languages like English are rich, complex, and powerful. The highly creative and gra...
When a student is learning an algorithm from a textbook, his first approach is frequently through an...
Feature-creep is a well-known phenomenon in software systems. In this paper, we argue that feature-c...
As computer technology matures, our growing ability to create large systems is leading to basic chan...
In this article we review the development of programming languages and classify them based on their ...
Software needs now strain the design limits of traditional programming languages. Modern application...
End-users must write programs to control many different kinds of applications. Examples include mult...
Despite much research on programming language principles, most often the design of modern languages...
Given the current drive to teach computational concepts to all from an early age, we consider whethe...
End-users must write programs to control many different kinds of applications. Examples include mult...
There is no need to argue in favor of concise, clear, complete, consistent, descriptions of programm...
Programming may be more difficult than necessary because it requires solutions to be expressed in wa...
{lorenz, lieber} @ ccs.neu.edu Software understanding (for documentation, maintenance or evolution)...
The basic knowledge of programming is not possible without the knowledge of its history. When you ar...
Given the current focus on teaching computational concepts to all from an early age, combined with t...
Abstract—Natural languages like English are rich, complex, and powerful. The highly creative and gra...
When a student is learning an algorithm from a textbook, his first approach is frequently through an...
Feature-creep is a well-known phenomenon in software systems. In this paper, we argue that feature-c...
As computer technology matures, our growing ability to create large systems is leading to basic chan...
In this article we review the development of programming languages and classify them based on their ...
Software needs now strain the design limits of traditional programming languages. Modern application...
End-users must write programs to control many different kinds of applications. Examples include mult...